package com.nc.mem.tests.cycle.inheritance;

public class B {

	A a;

	@Override
	public boolean equals(final Object obj) {
		if (this == obj) {
			return true;
		}
		if (obj == null) {
			return false;
		}
		if (getClass() != obj.getClass()) {
			return false;
		}
		final B other = (B) obj;
		if (a == null) {
			if (other.a != null) {
				return false;
			}
		} else {
			if (this.a.b == this) {
				if (other.a != null && other.a.b != other) {
					return false;
				}
			}
		}
		return true;
	}

}
